#include<iostream>
using namespace std;
#include"test.h"

void test_stack() 
{
    bit::stack<int> s;
    s.push(1);
    s.push(2);
    s.push(3);

    std::cout << "Stack top: " << s.top() << std::endl;
    s.pop();
    std::cout << "Stack top after pop: " << s.top() << std::endl;

    std::cout << "Stack size: " << s.size() << std::endl;
    std::cout << "Stack is empty: " << (s.empty() ? "Yes" : "No") << std::endl;
}

void test_queue() 
{
    bit::queue<int> q;
    q.push(1);
    q.push(2);
    q.push(3);

    std::cout << "Queue front: " << q.front() << std::endl;
    std::cout << "Queue back: " << q.back() << std::endl;
    q.pop();
    std::cout << "Queue front after pop: " << q.front() << std::endl;

    std::cout << "Queue size: " << q.size() << std::endl;
    std::cout << "Queue is empty: " << (q.empty() ? "Yes" : "No") << std::endl;
}


int main()
{
    test_stack();
    test_queue();
	return 0;
}